package com.erp.order.domain.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;

import java.util.Date;


/**
 * 订单发货视图对象 erp_send_out_goods
 *
 * @author erp
 * @date 2023-06-06
 */
@Data
@ExcelIgnoreUnannotated
public class ErpSendOutGoodsVo {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @ExcelProperty(value = "主键")
    private Long id;

    /**
     * 订单ID
     */
    @ExcelProperty(value = "订单ID")
    private Long orderId;

    /**
     * 子订单ID
     */
    @ExcelProperty(value = "子订单ID")
    private String childOrderId;

    /**
     * 国内订单号
     */
    @ExcelProperty(value = "国内订单号")
    private String trackingNo;

    /**
     * 4px跟踪号;4PX唯一跟踪号，可用于在4PX轨迹系统查询
     */
    @ExcelProperty(value = "4px跟踪号;4PX唯一跟踪号，可用于在4PX轨迹系统查询")
    private String fpxTrackingNo;

    /**
     * 国际运单号;物流单号
     */
    @ExcelProperty(value = "国际运单号;物流单号")
    private String shippingNo;

    /**
     * 发货面单
     */
    @ExcelProperty(value = "发货面单")
    private String onlineLogisticsLabel;

    /**
     * 是否使用
     */
    @ExcelProperty(value = "是否使用")
    private String isUse;

    /**
     * 预计到货时间戳
     */
    @ExcelProperty(value = "预计到货时间戳")
    private Long arrivalTime;

    /**
     * 出库时间
     */
    @ExcelProperty(value = "出库时间")
    private Date sendTime;

    /**
     * 购买凭证
     */
    @ExcelProperty(value = "购买凭证")
    private String proof;

    /**
     * 物流产品代码
     */
    @ExcelProperty(value = "物流产品代码")
    private String logisticsProductCode;

    /**
     * 采购价格
     */
    @ExcelProperty(value = "采购价格")
    private String purchasePrice;

    /**
     * 物流方案
     */
    @ExcelProperty(value = "物流方案")
    private String warehouseCarrierService;

    /**
     * 线上发货解决方案
     */
    @ExcelProperty(value = "线上发货解决方案")
    private String solutionCode;

    /**
     * 0-线上发货 1-线下发货
     */
    @ExcelProperty(value = "0-线上发货 1-线下发货")
    private Integer type;

    /**
     * 0-暂不可声明发货 1-待声明发货 2-已声明发货
     */
    @ExcelProperty(value = "0-暂不可声明发货 1-待声明发货 2-已声明发货")
    private Integer shipmentForTopFlag;

    /**
     * 乐观锁
     */
    @ExcelProperty(value = "乐观锁")
    private String revision;

    @TableField(exist = false)
    private String erpInnerOrderStatus;

    @TableField(exist = false)
    private String leftEndGoodTime;



    /**
     * 出库委托单号
     */
    private String consignmentNo;

}
